home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / dskut / anad207.zip / ANADISK.DOC < prev    next >
Text File  |  1992-09-03  |  79KB  |  2,116 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                   AnaDisk
  8.  
  9.  
  10.            The Compleat Diskette Utility
  11.  
  12.            Version 2.01, November, 1989
  13.        Copyright 1989, Sydex.  All Rights Reserved.
  14.  
  15.  
  16.                   NOTICE
  17.  
  18.       THIS IS NOT FREE    SOFTWARE!   If you  paid    a  "public
  19.       domain"  vendor for this program,  you paid for the serv-
  20.       ice of copying the program,  and not for the program it-
  21.       self.   Rest assured  that  nothing  ever     gets  to  the
  22.       originators  of this product from such a sale.   You may
  23.       evaluate this product,  but if you make use of  it,  you
  24.       must register your copy.
  25.  
  26.       We  offer     several  inducements  to you for registering.
  27.       First of all,  you receive the most up-to-date  copy  of
  28.       the program that we have -- and we do update the product
  29.       on  a  regular  basis.    You  also  receive support for
  30.       AnaDisk -- which can be quite valuable at     times.       You
  31.       also  receive  complete  printed    documentation  for the
  32.       product. A "do-it-yourself" update service is offered to
  33.       registered users through our own BBS.   And finally,  we
  34.       include  an  evaluation  package    of  some  of our other
  35.       software products.  Make no mistake,  however--this is a
  36.       fully  functional     version of AnaDisk and not "crippled"
  37.       in any way.   As a final inducement to  you--the    regis-
  38.       tered package does not contain the advertising copy...
  39.  
  40.  
  41.               REGISTRATION INFORMATION
  42.  
  43.       The  non-commercial  single-user    registration  fee  for
  44.       AnaDisk is $25.00 US.   The commercial  and  multisystem
  45.       site  fee     for  AnaDisk  is  $150.00.   Users outside of
  46.       Canada and the United States  should  include  an     addi-
  47.       tional  $5.00 for international airmail.     We can accept
  48.       payment only in U.S. funds.
  49.  
  50.       Send a check or company P.O.  for the appropriate amount
  51.       to:
  52.  
  53.                                    Sydex
  54.                                P.O. Box 5700
  55.                              Eugene, OR  97405
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.       We can also accept VISA or Master Charge; contact us for
  64.       details.      On corporate orders,    our terms are normally
  65.       net 30.    Please indicate what product you are  ordering
  66.       and  if you have a requirement for 3.5" media.   We nor-
  67.       mally ship 5.25" 360K diskettes,  but will furnish  3.5"
  68.       720K media upon request.
  69.  
  70.       If  you are a registered user of this product and desire
  71.       an update,  please send $4.00 for handling and  we  will
  72.       ship  you     an  up-to-date     copy.      Please add $3.00 for
  73.       printed documentation to cover duplication costs.
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.             DISTRIBUTION NOTICE
  122.  
  123.       This is  "user-supported"     software.    You  are    hereby
  124.       granted a license by Sydex to distribute this evaluation
  125.       copy  of    AnaDisk and its documentation,    subject to the
  126.       following conditions:
  127.  
  128.       1.   AnaDisk may be distributed freely without charge in
  129.        evaluation form only.
  130.  
  131.       2.   AnaDisk may not be sold, licensed, or a fee charged
  132.        for its use.      If a fee is  charged    in  connection
  133.        with AnaDisk,  it must cover the cost of copying or
  134.        dissemination only.     Such charges must be  clearly
  135.        identified as such by the originating party.     Under
  136.        no circumstances may the purchaser be given the im-
  137.        pression that he is buying AnaDisk itself.
  138.  
  139.       3.   AnaDisk  must be presented as a complete unit,  in-
  140.        cluding this documentation.     Neither  AnaDisk  nor
  141.        its    documentation may be amended or altered in any
  142.        way.
  143.  
  144.       4.   By granting you the right to distribute the evalua-
  145.        tion form of AnaDisk,  you do not become the     owner
  146.        of AnaDisk in any form.
  147.  
  148.       Any other use, distribution or representation of AnaDisk
  149.       is  expressly  forbidden    without the written consent of
  150.       Sydex.
  151.  
  152.  1
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  --------------------
  168.  1. CP/M, CP/M-80 and CP/M 2.2 are trademarks of Digital Research.
  169.  MS-DOS is a trademark of Microsoft.  IBM PC,  PC-XT and PC-AT are
  170.  trademarks of International Business Machines.      CompatiCard is a
  171.  trademark of MicroSolutions, Inc.
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.              Table of Contents
  180.  
  181.  
  182.    Overview.....................................................1
  183.  
  184.    Installing AnaDisk...........................................1
  185.  
  186.    Running AnaDisk..............................................4
  187.     Scan Operation..............................................8
  188.     Edit Sectors Operation.....................................10
  189.     Examine Files..............................................16
  190.     Search.....................................................20
  191.     Copy Diskette..............................................24
  192.     Repair.....................................................26
  193.     FAT Editor.................................................27
  194.     Custom Format Design.......................................29
  195.     Dump Operation.............................................31
  196.     In Conclusion..............................................32
  197.  
  198.    Other Sydex Products........................................33
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  Overview
  207.  
  208.  AnaDisk is a utility for examining,  editing and  analyzing  dis-
  209.  kettes.  It performs the following functions:
  210.  
  211.       *       Analyze diskettes for content and consistency.  The den-
  212.        sity     and  format of diskettes are automatically deter-
  213.        mined;  any format changes or media errors  are  noted.
  214.        In the case of DOS diskettes, checks are made to ensure
  215.        that     a  diskette  complies with generally accepted DOS
  216.        implementation practice.
  217.  
  218.       *       Search diskettes for text.     Both  case-sensitive  and
  219.        case-insensitive searches may be performed,    as well as
  220.        search keys with "wild card" or "don't care" positions.
  221.        Both the active data areas,    as well as the inactive or
  222.        erased data areas may be searched.
  223.  
  224.       *       Examine and print data on a physical sector, as well as
  225.        on a file basis.   Either ASCII or hexadecimal displays
  226.        may be used.
  227.  
  228.       *       Copy a diskette without regard to format or type.
  229.  
  230.       *       Modify data on a diskette.
  231.  
  232.       *       Repair DOS diskettes containing data errors.
  233.  
  234.       *       Format a diskette according to custom specifications.
  235.  
  236.       *       Copy an area of a diskette to a DOS file.
  237.  
  238.  AnaDisk features a menu-driven "windowed" presentation.    Exten-
  239.  sive context-sensitive on-line help is available.
  240.  
  241.  AnaDisk requires an IBM PC or PS/2 compatible computer for opera-
  242.  tion.    Certain computers, such as the Tandy 1000, 2000 or the IBM
  243.  PC Jr., are not sufficiently compatible to support AnaDisk.
  244.  
  245.  At  least  512K  of  memory  and  a hard disk are recommended for
  246.  AnaDisk operation, although some function may be obtained with as
  247.  little as 384K on a diskette-only system.
  248.  
  249.  
  250.  Installing AnaDisk
  251.  
  252.  The software for AnaDisk is  contained     in  two  programs.    The
  253.  first,     the  installation  program,  called ADINSTAL,    is used to
  254.  determine the diskette configuration of the computer being  used.
  255.  This  installation  program  modifies    the second part,  the file
  256.  ANADISK.EXE, with the diskette configuration information.
  257.  
  258.  
  259.                   Page 1
  260.  
  261.  
  262.  
  263.  
  264.  +-----------------------------------------------------------------------+
  265.           AnaDisk INSTALLATION PROGRAM Ver. 2.01
  266.  
  267.            Copyright 1989, Sydex.  All Rights Reserved.
  268.  
  269.  
  270.  This program installs AnaDisk.
  271.  
  272.  Installation is a one-time task; you should not need to re-run this
  273.  program unless you have changed your equipment configuration.
  274.  
  275.  Installation may be performed with a single diskette, or any combination
  276.  of diskettes and hard disks.  The most common installation is from a dis-
  277.  kette to a hard disk.    During this installation, you will be asked to
  278.  provide a copy of the AnaDisk files.  If you don't have these files,
  279.  press ESCape to exit now.  This installation procedure selects diskette
  280.  drive types and processor type.  In addition, the installed AnaDisk is
  281.  copied to a destination drive of your choice.
  282.  
  283.  
  284.  
  285.  If you do not wish to install AnaDisk at this time, press ESCape.  Press
  286.  any other key to continue...
  287.  
  288.  +-----------------------------------------------------------------------+
  289.  
  290.          Figure 1: ADINSTAL Opening Screen
  291.  
  292.  AnaDisk must be installed prior  to  use.    After  installation,
  293.  AnaDisk  need not be re-installed unless the configuration of the
  294.  computer being used is changed.   It is possible to re-install an
  295.  already installed copy of AnaDisk.
  296.  
  297.  To install AnaDisk, first load DOS.  Insert the AnaDisk distribu-
  298.  tion  diskette     into diskette drive A:,  then enter the following
  299.  command:
  300.  
  301.        A:ADINSTAL            and press the ENTER key.
  302.  
  303.  The display in Figure 1 will appear.  Press the ENTER key to con-
  304.  tinue with the installation process.
  305.  
  306.  Prompts will appear for the source and destination  disk  drives.
  307.  AnaDisk may be re-installed over itself,  if need be.    Otherwise,
  308.  the source copy of AnaDisk is not modified  by     the  installation
  309.  software.
  310.  
  311.  After AnaDisk has been read from the specified source drive,  the
  312.  display in Figure 2 appears.  ADINSTAL groups PC-Compatibles into
  313.  those having a PC XT-type of architecture,  or those having a    PC
  314.  AT-type.    However,  this  division  is  not always clear,  par-
  315.  ticularly in the case of an XT-class  PC  with     an  add-in  high-
  316.  
  317.                   Page 2
  318.  
  319.  
  320.  
  321.  
  322.  density  diskette controller.     These are provided by a number of
  323.  vendors for enhancement purposes,  and     their    presence  requires
  324.  that the PC be declared as an AT-style computer.
  325.  
  326.  +-----------------------------------------------------------------------+
  327.  
  328.  Although your computer may be an XT-type system, you may wish to force it
  329.  to be treated as an AT-class machine if you have a high-density diskette
  330.  controller.
  331.  
  332.  On the other hand, if you are using a Toshiba 3100, you probably need to
  333.  indicate that it's an XT-type machine to get the diskette drives to
  334.  operate correctly.
  335.  
  336.  You have a PC AT, IBM PS/2 or compatible.
  337.  
  338.  
  339.  Is this correct? (Y or N)
  340.  
  341.  
  342.  +-----------------------------------------------------------------------+
  343.            Figure 2: ADINSTAL Computer Selection
  344.  
  345.  If permitted, ADINSTAL will attempt to determine the diskette con-
  346.  figuration  of the computer.    In any case,  a display similar to
  347.  the following screen (Figure 3) is shown:
  348.  
  349.  
  350.               DISKETTE CONFIGURATION
  351.  
  352.  The following diskettes are present on your computer:
  353.  
  354.  
  355.       NO. DRIVE      UNIT     ADAPTER     DRIVE TYPE          STEP RATE
  356.  
  357.  
  358.        1.   A:       0     PRIMARY    1.2M 5.25"           6 msec.
  359.        2.   B:       1     PRIMARY    1.44M 3.5"           6 msec.
  360.        3.   (NONE DEFINED)
  361.        4.   (NONE DEFINED)
  362.        5.   (NONE DEFINED)
  363.        6.   (NONE DEFINED)
  364.        7.   (NONE DEFINED)
  365.        8.   (NONE DEFINED)
  366.  
  367.        Are there any changes? (Y or N)
  368.  
  369.  +-----------------------------------------------------------------------+
  370.  
  371.          Figure 3: Diskette Configuration Display
  372.  
  373.  
  374.  
  375.                   Page 3
  376.  
  377.  
  378.  
  379.  
  380.  Information contained on this display may be  changed    until  the
  381.  data  reflects     the  actual  configuration  of the host computer.
  382.  DRIVE is used by AnaDisk to refer to a diskette drive.      While it
  383.  is  advisable    that  the drive letter be the same as that used by
  384.  DOS to refer to that drive, any letter can be used.   UNIT refers
  385.  to  the physical unit number of a drive.   Some diskette adapters
  386.  are able to access only two  drives,  physical     units    0  and    1.
  387.  Other adapters,  particularly those of the XT variety, can access
  388.  up to four drives, physical units 0, 1, 2 and 3.
  389.  
  390.  If a second diskette adapter has been added to the host computer,
  391.  it will be necessary to configure units attached to that  adapter
  392.  as  Secondary.      Note that,  on secondary adapters,  the physical
  393.  unit numbering starts over again with unit 0.     It will be neces-
  394.  sary  to specify the base I/O port address of this adapter;  most
  395.  comon adapters use 0370 as the secondary base address.      The dis-
  396.  kette adapter manufacturer's reference material should be checked
  397.  to verify this, however.
  398.  
  399.  The  drive  step  rate     refers     to  how  quickly  the positioning
  400.  mechanism in a drive is able to move the  read/write  heads  from
  401.  cylinder  to cylinder.      In almost all instances of 5.25" drives,
  402.  the default of 6 milliseconds will be satisfactory.   This  value
  403.  sometimes  needs  to  changed    for  some of the older 8" diskette
  404.  drives.
  405.  
  406.  AnaDisk does not explicitly support dual-speed 5.25" drives.    A
  407.  dual-speed  drive  is    one  that rotates the media at 300 RPM for
  408.  low-density recording and 360 RPM for high-density recording.    If
  409.  it is desired to use a dual-speed drive,  it must be declared    as
  410.  two  separate    drives,     a  high-density drive,     and a low-density
  411.  drive, using two different drive letters.
  412.  
  413.  After the diskette drives have been configured for  AnaDisk,  the
  414.  installed  program  file  is written to the specified destination
  415.  path and drive, and AnaDisk is ready for use.
  416.  
  417.  
  418.  Running AnaDisk
  419.  
  420.  To start AnaDisk, simply enter the following at the DOS prompt:
  421.  
  422.        ANADISK
  423.  
  424.  and press the ENTER key.   AnaDisk will normally adjust its video
  425.  display  routines  to    make  use  of  the display adapter in use.
  426.  However,  if the display adapter is of a color type and the  dis-
  427.  play monitor itself is monochrome,  it will be necessary to start
  428.  AnaDisk with the following command to get a readable display:
  429.  
  430.        ANADISK  M
  431.  
  432.  
  433.                   Page 4
  434.  
  435.  
  436.  
  437.  
  438.  AnaDisk has many displays and functions,  but there  are  certain
  439.  keys which always have the same effect during AnaDisk operation:
  440.  
  441.       F1   is the Help key.  It may be pressed any time additional
  442.        information is required.   The help displays in AnaDisk
  443.        can be characterized as being Context-Sensitive.   That
  444.        is,    only information relevant to the current operation
  445.        is presented.   For example,     if AnaDisk were prompting
  446.        for    a  file     name,    F1  would  produce  a display that
  447.        presented information about the application of the file
  448.        being requested.
  449.  
  450.       ESCape is the Exit key.    It may be pressed at any  time    to
  451.        terminate the operation in progress.      Unless otherwise
  452.        noted,  pressing ESCape will cause AnaDisk to return to
  453.        the    display that preceded the current one.     If ESCape
  454.        is pressed a sufficient number of times,  AnaDisk  will
  455.        exit to DOS.
  456.  
  457.  When an abnormal condition has been detected in AnaDisk,  a small
  458.  window describing the condition will  appear.      This    window    is
  459.  referred to as the "Alert Box":
  460.  
  461.           ╔════════<>^v to Move══════════╗
  462.           ║ Drive A: is not ready.     ║
  463.           ║ Please correct and press     ║
  464.           ║ any key to continue.     ║
  465.           ║                 ║
  466.           ║                 ║
  467.           ╚══════════════════════════════╝
  468.  
  469.  The Alert Box may be moved around the screen by means of the cur-
  470.  sor keys.   Up- and down-cursor move the Alert Box up or down one
  471.  character row,     respectively.     Right-     and  left-cursor  have     a
  472.  similar  effect.    The Home key moves the Alert Box to the upper
  473.  left corner of the display; End moves it to the lower left.  PgUp
  474.  moves the Alert Box to the upper right corner of the display  and
  475.  PgDn moves it to the lower right.
  476.  
  477.  After AnaDisk is loaded by DOS,  the following display (Figure 4)
  478.  appears:
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.                   Page 5
  492.  
  493.  
  494.  
  495.  
  496.  +-----------------------------------------------------------------------+
  497.   ESC to Exit              AnaDisk 2.01               F1 for Help
  498.  
  499.  
  500.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  501.  ║                    ║║ Select - ESCape to quit, F1, help ║
  502.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  503.  ╔═══════════════════════════════════════════════════════════════════════╗
  504.  ║                                     ║
  505.  ║                MAIN MENU                 ║
  506.  ║                                     ║
  507.  ║                                     ║
  508.  ║     Select function with cursor keys.  ENTER (<┘) confirms         ║
  509.  ║     your choice and goes to next menu.  F1 gets help, ESCape exits     ║
  510.  ║     to DOS.                             ║
  511.  ║                                     ║
  512.  ║                                     ║
  513.  ║    SCAN  SECTOR  FILE  SEARCH  COPY  REPAIR  FAT  FORMAT  DUMP     ║
  514.  ║                                     ║
  515.  ║                                     ║
  516.  ║                                     ║
  517.  ║                                     ║
  518.  ╚═══════════════════════════════════════════════════════════════════════╝
  519.  +-----------------------------------------------------------------------+
  520.  
  521.          Figure 4: AnaDisk Opening Display
  522.  
  523.  If the ESCape key is pressed,    AnaDisk exits to DOS.    Otherwise,
  524.  the  cursor  right-  and left- arrow keys are used to position to
  525.  highlight,  and thereby select,  the desired function.      After     a
  526.  function  has been selected,  pressing the ENTER key will cause a
  527.  menu specific to the particular function to be displayed.
  528.  
  529.  The functions performed by AnaDisk are as follows:
  530.  
  531.       The Scan function reads an entire diskette  and  points  out
  532.        any problems or inconsistencies.  A quick look is taken
  533.        at all of the files on the diskette and checks are made
  534.        to  ensure  that  file contents are consistent with the
  535.        file type.  A "log" of the activity can be printed,    if
  536.        desired.
  537.  
  538.       Sectors provides a diskette editing function, operating on a
  539.        sector-by-sector basis.   Diskette data can be printed,
  540.        displayed or changed.
  541.  
  542.       Files provides a facility to examine file data on the  basis
  543.        of file name,  rather than physical diskette sector ad-
  544.        dresses.   It is possible to "walk" the directory  tree
  545.        and print or display file data.
  546.  
  547.  
  548.  
  549.                   Page 6
  550.  
  551.  
  552.  
  553.  
  554.       Search provides a facility to search for data on a diskette.
  555.        A  number  of  search  key  values can be specified and
  556.        these may contain "wild-card" or "don't  care"  values.
  557.        The results of the search can be displayed or printed.
  558.  
  559.       Copy  provides  a     disk-to-disk copying function.      A "true"
  560.        copy of an  entire  diskette     is  produced  within  the
  561.        limits of the PC diskette adapter hardware.     It is not
  562.        necessary to pre-format the target diskette,     but it is
  563.        advisable to write-protect the source diskette.
  564.  
  565.       Repair  scans a DOS diskette for data errors and attempts to
  566.        mitigate their effect by "moving" the contents  of  er-
  567.        roneous sectors to other areas of the diskette.
  568.  
  569.       FAT provides a DOS File Allocation Table editor.
  570.  
  571.       Format  supplies    a  custom  diskette formatting capability.
  572.        This is a feature intended for advanced users.
  573.  
  574.       Dump copies specified areas of a diskette     to  a    DOS  file.
  575.        The diskette being copied need not be a DOS diskette.
  576.  
  577.  As is the case throughout AnaDisk, help may be obtained by press-
  578.  ing F1.
  579.  
  580.  +-----------------------------------------------------------------------+
  581.  ESC to Exit              AnaDisk 2.01               F1 for Help
  582.  
  583.  
  584.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  585.  ║                    ║║ Select - ESCape to quit, F1, help ║
  586.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  587.  ╔═══════════════════════════════════════════════════════════════════════╗
  588.  ║                                     ║
  589.  ║                  Scan DISKETTE                 ║
  590.  ║                                     ║
  591.  ║ Select choices with cursor keys.  Move between lines with up, down     ║
  592.  ║ keys.  ENTER (<┘) begins execution.    F1 gets help, ESCape         ║
  593.  ║ goes back to the opening menu.                     ║
  594.  ║                                     ║
  595.  ║        Diskette Unit                A:    B:         ║
  596.  ║                                     ║
  597.  ║        Printer output                 NO YES         ║
  598.  ║                                     ║
  599.  ║        Pause after anomalies             NO YES         ║
  600.  ║                                     ║
  601.  ╚═══════════════════════════════════════════════════════════════════════╝
  602.  +-----------------------------------------------------------------------+
  603.  
  604.             Figure 5: Scan Menu
  605.  
  606.  
  607.                   Page 7
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  Scan Operation
  614.  
  615.  When the Scan function is selected, the display shown in Figure 5
  616.  appears.  The choice for each item in the menu can be selected by
  617.  positioning the highlighted area using the right- and left-cursor
  618.  keys.    The up- and down-cursor keys select the desired menu item.
  619.  When  the  desired  selections     have been made,  the ENTER key is
  620.  pressed to begin processing Scan mode.
  621.  
  622.  The Scan function reads an entire diskette and attempts  to  dis-
  623.  cover    data errors or inconsistencies.      AnaDisk first determines
  624.  the layout of cylinders,  tracks and sectors,    then  attempts    to
  625.  classify the diskette according to operating system type.  If the
  626.  diskette  appears to have a DOS format,  a validity check is made
  627.  of the File Allocation Table (FAT).  Finally, every sector of the
  628.  diskette is read, and errors and format changes noted.
  629.  
  630.  
  631.  +-----------------------------------------------------------------------+
  632.  ESC to Exit             AnaDisk 2.01               F1 for Help
  633.  ├┴┴╫┴┴┴┴╫┴┴┴┴╫^┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴
  634.  0  5    10   15      20   25  30    35  40     45   50  55   60   65     70   75
  635.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  636.  ║  A: Cyl 16 Side 1 Cluster 144    ║║ Working...             ║
  637.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  638.  ╔════════════ GENERAL ═════════════╗╔════════════ ANALYSIS  ════════════╗
  639.  ║                    ║║          Track 8, Side 0         ║
  640.  ║  Double-Sided  Double Density    ║║     Sector 4, data error         ║
  641.  ║  Interleave is 1:1            ║║                     ║
  642.  ║  Sector size is 512 bytes        ║║                     ║
  643.  ║  Side 0 sector ID's 1 - 9        ║║                                   ║
  644.  ║  Side 1 sector ID's 1 - 9        ║║                                   ║
  645.  ║                    ║║                     ║
  646.  ║  DOS 5¼" 360K Format             ║║                                   ║
  647.  ║                    ║║                     ║
  648.  ║                    ║║                     ║
  649.  ║__________________________________║║                     ║
  650.  ║   FILE ALLOCATION TABLE (FAT)    ║║                     ║
  651.  ║                    ║║                     ║
  652.  ║   Sectors Used:    540 ( 270K) ║║                     ║
  653.  ║   Sectors Reserved:      0 (    0K) ║║                     ║
  654.  ║   Sectors Flawed:     30 (  15K) ║║                     ║
  655.  ║   Sectors Free:    138 (  69K) ║║                     ║
  656.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  657.  +-----------------------------------------------------------------------+
  658.  
  659.         Figure 6: Scan function operating display.
  660.  
  661.  
  662.  
  663.  
  664.  
  665.                   Page 8
  666.  
  667.  
  668.  
  669.  
  670.  A normal Scan function operating display is shown  in    Figure    6.
  671.  The  "thermometer  bar"  across  the  top of the screen indicates
  672.  where AnaDisk is positioned on the diskette.    The small arrow on
  673.  the  display points down if the first side of a diskette is being
  674.  accessed,  or up for the second side.     In addition,  position is
  675.  also shown in the small window in the upper-left part of the dis-
  676.  play.    A progress message is displayed in the small window in the
  677.  upper-right part of the display.
  678.  
  679.  The  window labeled GENERAL contains information about the static
  680.  or unchanging aspects of the diskette under examination,  such as
  681.  number     of  sectors  per track and File Allocation Table informa-
  682.  tion.     The window labeled ANALYSIS describes events of a dynamic
  683.  nature,  such as read errors and anomalies in diskette structure.
  684.  This window uses a scrolling display; that is, the oldest informa-
  685.  tion is replaced by the newest.
  686.  
  687.  For DOS diskettes with readable file allocation information,  the
  688.  lower    part  of the GENERAL window presents the data contained in
  689.  the File Allocation Table (FAT) on the diskette.
  690.  
  691.  If Pause after anomalies on the Scan menu is selected, some infor-
  692.  mation is presented by opening an additional window  which  over-
  693.  lays the display and temporarily suspends AnaDisk operation until
  694.  acknowledged from the keyboard.   If Pause after anomalies is not
  695.  selected,  important information is written in the ANALYSIS  win-
  696.  dow, but operation of AnaDisk is not suspended.
  697.  
  698.  If Printer output is selected, a running log of analysis informa-
  699.  tion is printed on the default printer (the DOS PRN: device).
  700.  
  701.  
  702.           ╔═══════════════════════════════════════╗
  703.           ║       BOOT SECTOR INFORMATION      ║
  704.           ║                      ║
  705.           ║ System Name.................IBM  3.3  ║
  706.           ║ Bytes/Sector................512      ║
  707.           ║ Sectors/Cluster.............2      ║
  708.           ║ Reserved Sectors............1      ║
  709.           ║ Number of FATs..............2      ║
  710.           ║ Root Directory Entries......112      ║
  711.           ║ Sectors on Diskette.........720      ║
  712.           ║ Media Byte..................fd      ║
  713.           ║ Sectors/FAT.................2      ║
  714.           ║ Sectors/Track...............9      ║
  715.           ║ Number of Sides.............2      ║
  716.           ║ Other Reserved Sectors......0      ║
  717.           ╚═══════════════════════════════════════╝
  718.  
  719.        Figure 7: Scan function Boot Sector display.
  720.  
  721.  
  722.  
  723.                   Page 9
  724.  
  725.  
  726.  
  727.  
  728.  One of the items of information that AnaDisk displays during Scan
  729.  operation is shown in Figure 7.  This shows information contained
  730.  in the first sector of a DOS diskette, which will be used in per-
  731.  forming file structure analysis of the diskette.
  732.  
  733.  If  the  number of sides declared by the DOS Boot Sector does not
  734.  match that actually detected by AnaDisk,  one    of  the     following
  735.  Alert Box messages appears:
  736.  
  737.       This is a double-sided DOS    This is a single-sided DOS
  738.       format, but only one side        format, but both sides
  739.       has data.     Press any key        have data.  Do you want to
  740.       to resume...            check both sides (Y or N)?
  741.  
  742.  The Scan function can detect media errors.  A few of the more com-
  743.  mon error messages displayed in the ANALYSIS window are:
  744.  
  745.                 Data Error
  746.  
  747.  Meaning:  Information has been read from the diskette, but inter-
  748.  nal  checks  made by the controller indicate that the data trans-
  749.  ferred is suspect.
  750.  
  751.                ID but no Data Found
  752.  
  753.  Meaning:  The marker identifying the beginning     of  a    sector    is
  754.  present, but not the marker that signifies that data follows.    No
  755.  data is transferred by the diskette controller.
  756.               Sector Missing
  757.              Gap in Addresses
  758.  
  759.  Meaning:   In DOS diskettes,  sectors are numbered consecutively.
  760.  This message indicates that one or  more  sectors  could  not    be
  761.  found in the normal numbering sequence.  This message can also be
  762.  indicative of some copy-protection schemes.
  763.  
  764.              No Data on Track
  765.  
  766.  Meaning:    The diskette track may be blank or be written in some
  767.  other recording mode,    such as single-density or those modes used
  768.  by  Apple  or    Commodore.   It is not possible to read this track
  769.  with the standard PC-style diskette adapter.
  770.  
  771.  
  772.  Edit Sectors Operation
  773.  
  774.  When the Edit Sectors operation is selected from the  Main  Menu,
  775.  the display shown in Figure 8 appears.
  776.  
  777.  
  778.  
  779.  
  780.  
  781.                   Page 10
  782.  
  783.  
  784.  
  785.  
  786.  The Edit Sectors function provides a facility to inspect,  change
  787.  and print diskette data on a sector-by-sector      basis,  as  con-
  788.  trasted  with Examine Files,  which implements inspection of data
  789.  within a specified DOS file.
  790.  
  791.  
  792.  +-----------------------------------------------------------------------+
  793.  ESC to Exit              AnaDisk 2.01               F1 for Help
  794.  
  795.  
  796.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  797.  ║                    ║║ Select - ESCape to quit, F1, help ║
  798.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  799.  ╔═══════════════════════════════════════════════════════════════════════╗
  800.  ║                                     ║
  801.  ║                   EDIT SECTORS                 ║
  802.  ║                                     ║
  803.  ║     Select choice with cursor keys.    ENTER (<┘) begins         ║
  804.  ║     execution.  F1 gets help, ESCape goes back to the opening menu.     ║
  805.  ║                                     ║
  806.  ║                                     ║
  807.  ║                                     ║
  808.  ║        Diskette Unit                A:    B:         ║
  809.  ║                                     ║
  810.  ║                                     ║
  811.  ╚═══════════════════════════════════════════════════════════════════════╝
  812.  +-----------------------------------------------------------------------+
  813.             Figure 8: Edit Sectors menu
  814.  
  815.  The Edit Sectors sub-menu provides for the selection  of  a  dis-
  816.  kette unit.
  817.  
  818.  Like the Scan function, Edit Sectors begins operation by determin-
  819.  ing  the  diskette type and drive characteristics.  After this is
  820.  done, the track and side containing the sector(s) to be inspected
  821.  or modified can be selected.
  822.  
  823.  The right- and left-cursor keys are used to select the track; the
  824.  up- and down-cursor keys are used to select the head or side con-
  825.  taining the sector.   The "thermometer" line shows this  position
  826.  change     correspondingly.      When the ENTER key is pressed,  the
  827.  track is read for analysis and a track map is displayed as  shown
  828.  in Figure 9.
  829.  
  830.  The  desired  sector  is selected from the displayed track map by
  831.  use of the up- and down-cursor keys. When the sector to be edited
  832.  is highlighted,  the ENTER key is pressed to display the data for
  833.  that sector.  If either the right- or left-cursor key is pressed,
  834.  the  next  or    previous track is analyzed,  and the track map for
  835.  that track displayed.      If the ESCape key  is     pressed,  AnaDisk
  836.  returns to the track selection display.
  837.  
  838.  
  839.                   Page 11
  840.  
  841.  
  842.  
  843.  
  844.  +-----------------------------------------------------------------------+
  845.  ESC to Exit             AnaDisk 2.01               F1 for Help
  846.  ├┴┴╫┴┴┴┴╫┴┴┴┴╫^┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴
  847.  0  5    10   15      20   25  30    35  40     45   50  55   60   65     70   75
  848.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  849.  ║  A: Cyl 1 Side 0 Cluster 5        ║║ Working...             ║
  850.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  851.  ╔══════════════════════════════ TRACK MAP ══════════════════════════════╗
  852.  ║ Select sector ^v, ENTER starts edit, Change track -><-, Exit ESC     ║
  853.  ║                                     ║
  854.  ║ CYL HEAD SECT SIZE FLAGS                         ║
  855.  ║   1      0    1  512                             ║
  856.  ║   1      0    2  512                             ║
  857.  ║   1      0    3  512                             ║
  858.  ║   1      0    4  512                             ║
  859.  ║   1      0    5  512                             ║
  860.  ║   1      0    6  512                             ║
  861.  ║   1      0    7  512                             ║
  862.  ║   1      0    8  512                             ║
  863.  ║   1      0    9  512                             ║
  864.  ║                                     ║
  865.  ║                                     ║
  866.  ║                                     ║
  867.  ╚═══════════════════════════════════════════════════════════════════════╝
  868.  +-----------------------------------------------------------------------+
  869.  
  870.          Figure 9:  Edit Sectors track map
  871.  
  872.  
  873.  Sectors  having  errors  are marked in the track map with an E in
  874.  the FLAGS column;  those having a Deleted Data Address     Mark  are
  875.  marked with the letter M.
  876.  
  877.  When  the  desired sector has been selected,  the editing display
  878.  appears as shown in Figure 10.      Initially,  sector data is  dis-
  879.  played     in  an     ASCII representation,    with undisplayable control
  880.  characters shown as dots.   The F8 key may be used to toggle  be-
  881.  tween    this  ASCII display and a mixed hexadecimal-ASCII display,
  882.  as illustrated in Figure 11.  The current position within the sec-
  883.  tor data is indicated by a highlighted reverse video  block,  and
  884.  may be moved by use of any of the cursor keys.      Data on the dis-
  885.  play may be changed by simply entering new data  at  the  current
  886.  position.    However,    data  is not written to the diskette until
  887.  Alt-F2 is pressed.  If data is changed,  the notation ALTERED ap-
  888.  pears in the menu window.
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.                   Page 12
  898.  
  899.  
  900.  
  901.  
  902.  +-----------------------------------------------------------------------+
  903.  ESC to Exit             AnaDisk 2.01               F1 for Help
  904.  ╔═══════════════════════════════════════════════════════════════════════╗
  905.  ║ F1  HELP      F2  Read Sect     F3  Print F4  Disk Print  F5  Shift <     ║
  906.  ║ F6  Shift >      F7  NOT     F8  Alpha F9  Read Last   F10 Read Next ║
  907.  ║ F2S Diag. Read F3S What File? F4S Save  F5S Recall       F6S Fill->End ║
  908.  ║ F9S Track - 1  F10S Track + 1 F2A Write F3A Reformat       ESC QUIT     ║
  909.  ║                                     ║
  910.  ║                                     ║
  911.  ║  Clust 3 Cyl 1 Side 0 Sect 9, Size 512            0000(0)     ║
  912.  ╚═══════════════════════════════════════════════════════════════════════╝
  913.  ╔═══════════════════════════════════════════════════════════════════════╗
  914.  ║ 0000     RNT=0ττ1170 GOSUB 14310 'TOGGLE CAPSLOCK ONττ1180 GOSUB 11700 'W║
  915.  ║ 0040     HAT KIND OF VIDEO ADAPTERττ1190 GOSUB 11850 'display Soft-SHARE ║
  916.  ║ 0080     logoττ1200 GOSUB 12120 'REQUEST RUNTIME OPTIONSττ1210 START$=""τ║
  917.  ║ 00c0     τ1220 FINISH$=""ττ1230 S=1ττ1240 ROWLINES=10ττ1250 PAGESIZE=50ττ║
  918.  ║ 0100     1260 FREELMT=10ττ1270 LINECNT=0ττ1280 PRVLNUM=-32768!ττ1290 CURL║
  919.  ║ 0140     INE!=0ττ1300 'ττ1310 IF RUNTYPE<3 GOTO 1470ττ1320 IF RUNTYPE>4 G║
  920.  ║ 0180     OTO 1470ττ1330 READ RESCNTττ1340 DIM RESWRD$(158) ' RESWRD$(153)║
  921.  ║ 01c0         FIXED IF COMPILEDττ1350 DIM WORDFLAG(158) ' WORDFLAG(153)   ║
  922.  ║                                     ║
  923.  ║                                     ║
  924.  ╚═══════════════════════════════════════════════════════════════════════╝
  925.  +-----------------------------------------------------------------------+
  926.  
  927.           Figure 10: ASCII Sector display
  928.  
  929.  
  930.  +-----------------------------------------------------------------------+
  931.  ╔═══════════════════════════════════════════════════════════════════════╗
  932.  ║0000    52 4e 54 3d 30 0d 0a 31 31 37 30 20 47 4f 53 55     RNT=0··1170 GOSU║
  933.  ║0010    42 20 31 34 33 31 30 20 27 54 4f 47 47 4c 45 20     B 14310 'TOGGLE ║
  934.  ║0020    43 41 50 53 4c 4f 43 4b 20 4f 4e 0d 0a 31 31 38     CAPSLOCK ON··118║
  935.  ║0030    30 20 47 4f 53 55 42 20 31 31 37 30 30 20 27 57     0 GOSUB 11700 'W║
  936.  ║0040    48 41 54 20 4b 49 4e 44 20 4f 46 20 56 49 44 45     HAT KIND OF VID ║
  937.  ║0050    4f 20 41 44 41 50 54 45 52 0d 0a 31 31 39 30 20     O ADAPTER··1190 ║
  938.  ║0060    47 4f 53 55 42 20 31 31 38 35 30 20 27 64 69 73     GOSUB 11850 'dis║
  939.  ║0070    70 6c 61 79 20 53 6f 66 74 2d 53 48 41 52 45 20     play Soft-SHARE ║
  940.  ║0080    6c 6f 67 6f 0d 0a 31 32 30 30 20 47 4f 53 55 42     logo··1200 GOSUB║
  941.  ║0090    20 31 32 31 32 30 20 27 52 45 51 55 45 53 54 20      12120 'REQUEST ║
  942.  ║00a0    52 55 4e 54 49 4d 45 20 4f 50 54 49 4f 4e 53 0d     RUNTIME OPTIONS ║
  943.  ║00b0    0a 31 32 31 30 20 53 54 41 52 54 24 3d 22 22 0d     ·1210 START$="" ║
  944.  ║00c0    0a 31 32 32 30 20 46 49 4e 49 53 48 24 3d 22 22     ·1220 FINISH$=""║
  945.  ╚═══════════════════════════════════════════════════════════════════════╝
  946.  +-----------------------------------------------------------------------+
  947.  
  948.         Figure 11: Mixed Hexadecimal-ASCII display.
  949.  
  950.  
  951.  Several function key combinations will specialized functions,    as
  952.  follows:
  953.  
  954.  
  955.                   Page 13
  956.  
  957.  
  958.  
  959.  
  960.  F1   obtains a brief Help display.
  961.  
  962.  F2   Re-reads the current sector.  This function may be needed if
  963.  data in the sector display has been modified,    and it is  desired
  964.  to bring back the original data.
  965.  
  966.  F3   Prints  the  current  sector  on the DOS printer (PRN:).     A
  967.  mixed hexadecimal-ASCII format is used.
  968.  
  969.  F4   Writes a mixed hexadecimal-ASCII representation of the  sec-
  970.  tor data to a standard DOS file.  If the DOS file exists prior to
  971.  the  F4  operation,  the data is appended to the end of the file.
  972.  Otherwise, a new file is created.
  973.  
  974.  F5   Shifts the data from the current (highlighted)  position    to
  975.  the  end  of  the  sector one bit left.   Bits shifted out of the
  976.  high-order positions of the current byte are lost; low order posi-
  977.  tions at the end of the current sector are filled with zero.
  978.  
  979.  F6   Shifts the data from the current (highlighted)  position    to
  980.  the  end  of  the sector one bit right.   Bits shifted out of the
  981.  low-order positions of the last byte  in  the    sector    are  lost;
  982.  high-order  bit  positions  at     the  current byte are filled with
  983.  zero.      The  shift-right  and     -left    functions  are    useful    in
  984.  reconstructing     information  in a sector which has become garbled
  985.  because of a data read error.
  986.  
  987.  F7   Performs the one's complement Boolean  operation  on  sector
  988.  data  from  the  current (highlighted) position to the end of the
  989.  sector.
  990.  
  991.  F8   Toggles  the  display  mode  from     ASCII    to  mixed   ASCII-
  992.  hexadecimal.
  993.  
  994.  F9   Reads the sector immediately preceding the current one.    If
  995.  the current sector is the first on the track, F9 re-reads the cur-
  996.  rent sector.
  997.  
  998.  F10  Reads the sector immediately following the current one.    If
  999.  the current sector is the last on the track, F10 re-reads the cur-
  1000.  rent sector.
  1001.  
  1002.  Shift-F2  Performs  a "diagnostic read" of the current track.     A
  1003.  diagnostic read involves reading the data field of the first sec-
  1004.  tor and continues with all fields until 16,384     bytes    have  been
  1005.  read.      ID fields, gap bytes and CRCs are read indiscriminately;
  1006.  no attempt to re-synchronize the  data     discrimination     logic    is
  1007.  made after the first sector has been read.   This function allows
  1008.  viewing of raw data and may be used to determine the value  of     a
  1009.  data field whose address ID field has been corrupted, or data con-
  1010.  tained within inter-sector gaps.   See the Diskette Tutorial sec-
  1011.  tion for more information.
  1012.  
  1013.                   Page 14
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  Shift-F3 Identifies the file of which the sector is a part.  Note
  1020.  that is function is available only for DOS diskettes.
  1021.  
  1022.  Shift-F4 Saves the contents of the sector in an internal  buffer.
  1023.  Each  time  Shift-F4  is depressed,  the previous contents of the
  1024.  save buffer are lost.
  1025.  
  1026.  Shift-F5 Recalls the contents of the save buffer to  the  current
  1027.  display.  Note that the contents of the buffer are not written to
  1028.  the diskette.
  1029.  
  1030.  Shift-F6 Fills the sector from the current position to the end of
  1031.  the sector with the value at the current position.
  1032.  
  1033.  Shift-F9  Analyzes the preceding track and displays the track map
  1034.  for it.  If the current track is the first on the diskette, it is
  1035.  re-read.
  1036.  
  1037.  Shift-F10 Analyzes the following track and displays the track map
  1038.  for it.
  1039.  
  1040.  Alt-F2       Writes the contents of the editing display back to  the
  1041.  diskette.
  1042.  
  1043.  Alt-F3       First reads all sectors on the current track,  then re-
  1044.  formats the current track with a fresh format pattern,     then  re-
  1045.  writes the sectors back to the track.     A display requesting con-
  1046.  firmation appears before the track is reformatted.
  1047.  
  1048.  ESCape Returns to the track map for this track.
  1049.  
  1050.  
  1051.  In addition to this information,  the menu window also shows  the
  1052.  current  sector,  the    position within the sector in both decimal
  1053.  and hexadecimal and the following flags, if applicable:
  1054.  
  1055.     ERR    The  sector  could  not     be  read  without  error.
  1056.        Before an attempt is made to read a sector, the data is
  1057.        set    to all zero.   If the error is one that results in
  1058.        no data being transferred,  the display will     show  all
  1059.        zero.
  1060.  
  1061.       CTL  MK  A  Deleted Data ID Address Mark was detected on the
  1062.        current sector.   DOS makes no use of this feature  and
  1063.        never  writes  this    flag,  but AnaDisk does detect its
  1064.        presence and reports it.
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.                   Page 15
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  Examine Files
  1077.  
  1078.  The Examine Files function provides for examination of data  con-
  1079.  tained     in DOS files.     After the Examine Files function has been
  1080.  selected from the Main Menu,  the diskette unit to be examined is
  1081.  selected from a subsidiary menu similar to that used for Edit Sec-
  1082.  tors.
  1083.  
  1084.  The main Examine Files display presents a list of file names con-
  1085.  tained     in the root directory of a diskette.    The cursor up- and
  1086.  down-arrow keys are used to select the highlighted file or direc-
  1087.  tory name to be examined; the file name display can be "paged" by
  1088.  means of the Page Up (PgUp) or Page Down (PgDn) keys.     Figure 12
  1089.  shows a sample display.
  1090.  
  1091.  
  1092.  +-----------------------------------------------------------------------+
  1093.  ESC to Exit            AnaDisk 2.01              F1 for Help
  1094.  ╔═══════════════════════════════════════════════════════════════════════╗
  1095.  ║     F1 Help        F2 Examine Sector       F3 Display File     ║
  1096.  ║     F4 Show Deleted    F5 Print ASCII           F6 Print Hex         ║
  1097.  ║     F7 Edit FAT    ENTER Select Directory       ESC Exit         ║
  1098.  ║                                     ║
  1099.  ║  Attributes: Archive Directory Volume label Hidden  Read only System     ║
  1100.  ║                                     ║
  1101.  ║  Directory: \                             ║
  1102.  ╚═══════════════════════════════════════════════════════════════════════╝
  1103.  ╔═══════════════════════════════════════════════════════════════════════╗
  1104.  ║     NAME       ATTRIB    TIME      DATE    LENGTH     CLUS         ║
  1105.  ║                                     ║
  1106.  ║   MKCHARS.C        A  14:17:21  11/16/89       1195        2         ║
  1107.  ║   TEXT2DAT.C        A  14:17:21  11/16/89        993        4         ║
  1108.  ║   IMGCPY.C        A  14:17:21  11/16/89       6058        5         ║
  1109.  ║   SAVECMOS.C        A  14:17:22  11/16/89       4443       11         ║
  1110.  ║   PUTCMOS.C        A  14:17:22  11/16/89       5010       16         ║
  1111.  ║   VERUSER.C        A  14:17:22  11/16/89      11462       21         ║
  1112.  ║   SAD.C        A  14:17:23  11/16/89       4356       33         ║
  1113.  ║   HEXSRCH.C        A  14:17:23  11/16/89       3904       38         ║
  1114.  ║   CGEN2ASM.C        A  14:17:24  11/16/89       1127       42         ║
  1115.  ║   CGEN2HP.C        A  14:17:24  11/16/89       8594       44         ║
  1116.  ║   PRUNE.C        A  14:17:24  11/16/89       4003       53         ║
  1117.  ╚═══════════════════════════════════════════════════════════════════════╝
  1118.  +-----------------------------------------------------------------------+
  1119.  
  1120.          Figure 12: Examine Files display
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.                   Page 16
  1130.  
  1131.  
  1132.  
  1133.  
  1134.        In  the  window displaying file names,  the meanings of
  1135.         the column labels are as follows:
  1136.  
  1137.         NAME is the name of the file.
  1138.  
  1139.         ATTRIB show flags for the file attributes.   These
  1140.               are as follows:
  1141.  
  1142.              A    is the "archive" flag.     This flag is used
  1143.                    by back-up  utilities  and  is  set
  1144.                    whenever     the  file  is    created or
  1145.                    modified.   Most back-up     utilities
  1146.                    clear  this  flag once the file has
  1147.                    been backed up.
  1148.  
  1149.              D is the "directory" flag.     When this flag is
  1150.                    present, the name shown is the name
  1151.                    of a directory, rather than a file.
  1152.  
  1153.              V is the "volume label" flag.  When this flag
  1154.                    is  present,  the name shown is the
  1155.                    name of the volume label     for  this
  1156.                    diskette.  This name can be changed
  1157.                    by means of the DOS LABEL utility.
  1158.  
  1159.              H    is  the "hidden" flag.     When this flag is
  1160.                    present,     the file name will not be
  1161.                    shown in a DOS directory listing.
  1162.  
  1163.              R is the "read only" flag.     When this flag is
  1164.                    set,  DOS  will not permit the file
  1165.                    to be written to.    This  flag    is
  1166.                    modified by means of the DOS ATTRIB
  1167.                    command.
  1168.  
  1169.              S    is  the "system" flag.     This flag is nor-
  1170.                    mally  only  associated    with   DOS
  1171.                    files loaded at system "boot" time.
  1172.                    Files  flagged  with this attribute
  1173.                    are also implicitly  read-only  and
  1174.                    hidden (R and H attributes).
  1175.  
  1176.  To examine the files in a particular subdirectory,  highlight the
  1177.  subdirectory name and press ENTER.   To go  back  to  the  parent
  1178.  directory of a subdirectory,  position to the ..  entry and press
  1179.  ENTER.
  1180.  
  1181.  Several functions are available on the Examine Files menu:
  1182.  
  1183.       F1   obtains a brief Help display.
  1184.  
  1185.  
  1186.  
  1187.                   Page 17
  1188.  
  1189.  
  1190.  
  1191.  
  1192.       F2   causes the Edit Sectors display to be activated,  using
  1193.        the    first  sector  of  the current (highlighted) file.
  1194.        All functions on the Edit  Sectors  menu  operate  nor-
  1195.        mally, with the following exceptions:
  1196.  
  1197.        F9    moves one sector back within the file.
  1198.  
  1199.        F10    moves one sector forward within the file.
  1200.  
  1201.        Shift-F9 and Shift-F10 do nothing.
  1202.  
  1203.        ESCape  returns  to the Examine Files menu,    not to the
  1204.         track map.
  1205.  
  1206.        In addition,     the relative byte offset within the  file
  1207.        is displayed, in addition to the cylinder, side and sec-
  1208.        tor.
  1209.  
  1210.       F3   displays  the currently highlighted file as ASCII text.
  1211.        The cursor-up, cursor-down,    PgUp,  PgDn,  Home and End
  1212.        keys may be used to navigate within a file.     Data past
  1213.        the end-of-file point is displayed following the  nota-
  1214.        tion:
  1215.  
  1216.                 >>> END-OF-FILE <<<
  1217.  
  1218.       F4   toggles  the     file directory display between Active and
  1219.        Deleted or erased files.   A deleted file always has     a
  1220.        "sigma" as the first character of the name.     Figure 13
  1221.        shows a deleted files display.
  1222.  
  1223.       F5   causes the currently highlighted file to be printed    as
  1224.        ASCII  text.       Data past the end-of-file point is also
  1225.        printed,  with the end-of-file shown as in the F3 func-
  1226.        tion, above.
  1227.  
  1228.       F6   causes  the currently highlighted file to be printed as
  1229.        a mixed ASCII-hexadecimal representation.
  1230.  
  1231.       F7   brings up the File Allocation Table (FAT)  editor,  and
  1232.        positions  the display to the first cluster of the cur-
  1233.        rent file.
  1234.  
  1235.       ENTER changes the display to the highlighted directory.    To
  1236.        return  to  the parent of the current directory,  high-
  1237.        light the .. entry and press ENTER.
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.                   Page 18
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  +-----------------------------------------------------------------------+
  1251.  ESC to Exit            AnaDisk 2.01              F1 for Help
  1252.  ╔═══════════════════════════════════════════════════════════════════════╗
  1253.  ║     F1 Help        F2 Examine Sector       F3 Display File     ║
  1254.  ║     F4 Show Deleted    F5 Print ASCII           F6 Print Hex         ║
  1255.  ║     F7 Edit FAT    ENTER Select Directory       ESC Exit         ║
  1256.  ║                                     ║
  1257.  ║  Attributes: Archive Directory Volume label Hidden  Read only System     ║
  1258.  ║                                     ║
  1259.  ║  Directory: \                             ║
  1260.  ╚═══════════════════════════════════════════════════════════════════════╝
  1261.  ╔═══════════════════════════════════════════════════════════════════════╗
  1262.  ║         NAME      ATTRIB     TIME       DATE        LENGTH   CLUS     ║
  1263.  ║                                     ║
  1264.  ║     σNADISK.EXE        A  15:16:01     05/16/89     71313    68     ║
  1265.  ║     σRCHECK.EXE        A  11:55:20     06/29/89      5084   302     ║
  1266.  ║     σNSTALL.EXE        A  10:36:05     09/07/89      0    0     ║
  1267.  ║                                     ║
  1268.  ║                                     ║
  1269.  ╚═══════════════════════════════════════════════════════════════════════╝
  1270.  +-----------------------------------------------------------------------+
  1271.  
  1272.          Figure 13: Deleted files display.
  1273.  
  1274.  
  1275.  It is possible to display and print  data  belonging  to  deleted
  1276.  files,     if the file has not already been overwritten.     If an at-
  1277.  tempt is made to display or print an overwritten file, the follow-
  1278.  ing Alert Box message will be displayed:
  1279.  
  1280.          ╔════════<>^v to Move══════════╗
  1281.          ║  This deleted file has    ║
  1282.          ║  been overwritten.  Press    ║
  1283.          ║  ESCape to quit display,    ║
  1284.          ║  Any other key to proceed... ║
  1285.          ║                ║
  1286.          ╚══════════════════════════════╝
  1287.  
  1288.  If the ESCape key is pressed,    AnaDisk returns to the file direc-
  1289.  tory display.    If, however, any other key is pressed, AnaDisk dis-
  1290.  plays information as if the file were not overwritten.     To gather
  1291.  data for display, AnaDisk searches (forward) for the next unallo-
  1292.  cated area and displays it.  Depending on the method by which the
  1293.  file was created, however, this may not actually reflect data con-
  1294.  tained in the file beyond the first allocation unit or cluster.
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.                   Page 19
  1304.  
  1305.  
  1306.  
  1307.  
  1308.  Search
  1309.  
  1310.  AnaDisk's  Search function will examine a diskette for a match on
  1311.  any one of a series of search key values,  referred to simply    as
  1312.  keys.    The search can extend over the entire diskette, the active
  1313.  file area,  or just the deleted (inactive) area.   Up to five 65-
  1314.  character keys may be specified; AnaDisk will search for all keys
  1315.  simultaneously and report a match on any key.
  1316.  
  1317.  
  1318.  +-----------------------------------------------------------------------+
  1319.  ESC to Exit              AnaDisk 2.0               F1 for Help
  1320.  
  1321.  
  1322.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  1323.  ║                    ║║ Select - ESCape to quit, F1, help ║
  1324.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1325.  ╔═══════════════════════════════════════════════════════════════════════╗
  1326.  ║                                     ║
  1327.  ║            SEARCH DISK FOR DATA                 ║
  1328.  ║                                     ║
  1329.  ║     Select choices with -><- cursor keys.  Move between lines with ^v ║
  1330.  ║     keys.  ENTER (<┘) confirms.  ESCape returns to the main menu.     ║
  1331.  ║                                     ║
  1332.  ║        Diskette Unit                A:    B:         ║
  1333.  ║                                     ║
  1334.  ║        Source for search values          KEYBOARD   OLDVALUES    ║
  1335.  ║                                     ║
  1336.  ║        Search alpha case-sensitive                NO  YES     ║
  1337.  ║                                     ║
  1338.  ║        Search what part of the disk?     ALL  ACTIVE  DELETED     ║
  1339.  ║                                     ║
  1340.  ║        Print hits without pausing                NO  YES     ║
  1341.  ║                                     ║
  1342.  ║        Masked Search                    NO  YES     ║
  1343.  ╚═══════════════════════════════════════════════════════════════════════╝
  1344.  +-----------------------------------------------------------------------+
  1345.  
  1346.               Figure 14: Search Menu.
  1347.  
  1348.  
  1349.  Keys may contain what are known as "don't care"  or  "wild  card"
  1350.  values, which will match any character.  To obtain the most effi-
  1351.  cient    performance,  a     key  should not begin with a "don't care"
  1352.  value.      In addition,    the search may be instructed to ignore the
  1353.  case of alphabetic data; e.g., the letter A will match both a and
  1354.  A.
  1355.  
  1356.  The  Search  menu  is shown in Figure 14.   The Source for search
  1357.  value selection offers two alternatives:
  1358.  
  1359.  
  1360.  
  1361.                   Page 20
  1362.  
  1363.  
  1364.  
  1365.  
  1366.       KEYBOARD specifies key entry from the keyboard.    After  all
  1367.        key values are entered, they may be saved to a file for
  1368.        later recall.
  1369.  
  1370.       OLD VALUES specifies that the keys entered for the preceding
  1371.        search should be used.   This option is invalid for the
  1372.        first search of a AnaDisk session.
  1373.  
  1374.  
  1375.  Search alpha case-sensitive specifies whether the  search  should
  1376.  consider  the case of alphabetic characters.    If NO is selected,
  1377.  the search considers both upper- and lower-case alphabetic charac-
  1378.  ters to be equivalent.     Thus,    DOG will match both DOG and dog if
  1379.  the search is not case-sensitive.
  1380.  
  1381.  Search     what  part of the disk?  offers three alternatives.   The
  1382.  first,     ALL,  specifies that the entire disk should  be  searched
  1383.  without  regard  to  file boundaries or use of a sector.   ACTIVE
  1384.  specifies that only the data areas belonging to  files     or  their
  1385.  directories be searched;  non-active (deleted or free) data areas
  1386.  will not be searched.    DELETED specifies that only the deleted or
  1387.  unallocated areas of the disk should be examined.
  1388.  
  1389.  Print hits without pausing instructs AnaDisk to record all search
  1390.  matches on the printer without stopping for verification.    Nor-
  1391.  mally,     AnaDisk opens a window when a match is found, as shown in
  1392.  Figure 16, and requests further direction.
  1393.  
  1394.  Masked Search refers to the optional specification  of     an  8-bit
  1395.  hexadecimal quantity which determines which bits in a byte are to
  1396.  be taken into consideration when a comparison is made.      Each bit
  1397.  in the mask quantity that contains  a    "0"  represents     a  "don't
  1398.  care"  position.   That is,  bits in these positions will have no
  1399.  effect on the outcome of a comparison.       Conversely,    those  bit
  1400.  positions  containing "1" bits will be considered in comparisons.
  1401.  A mask quantity of all zeroes would represent no significant posi-
  1402.  tions and so will not be allowed by AnaDisk.
  1403.  
  1404.  When search keys are to be entered from the keyboard, the display
  1405.  in Figure 15 appears.     Key values up to 65 characters may be en-
  1406.  tered;     "don't  care" values may be specified by the key combina-
  1407.  tion Alt-X.   "Don't care" values will appear as highlighted  in-
  1408.  verted question marks.
  1409.  
  1410.  Data entry may be performed in either ASCII or hexadecimal modes.
  1411.  Initially,  data entry begins in ASCII mode;  the Tab key is used
  1412.  to alternate between modes and may be used at any time.   Regard-
  1413.  less of the mode used to enter search values, an appropriate rep-
  1414.  resentation  appears  in both the ASCII and the hexadecimal parts
  1415.  of the display as the values are entered.
  1416.  
  1417.  
  1418.  
  1419.                   Page 21
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  -----------------------------------------------------------------------+
  1425.  ESC to Exit               AnaDisk 2.01               F1 for Help
  1426.  
  1427.  
  1428.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  1429.  ║                    ║║ Enter Search Key - F1 for help     ║
  1430.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1431.  ╔═══════════════════════════════════════════════════════════════════════╗
  1432.  ║                                     ║
  1433.  ║                SPECIFY SEARCH VALUE             ║
  1434.  ║                                     ║
  1435.  ║  Enter search value 1, 65 characters maximum.  Alt-X for Don't Care,  ║
  1436.  ║  Alt-V for verbatim values,    TAB changes hex/ASCII mode.  Press     ║
  1437.  ║  ENTER (±┘) when done.  ±┘ alone for last value.             ║
  1438.  ║                                     ║
  1439.  ║                                     ║
  1440.  ║                 ----  ASCII ----                 ║
  1441.  ║     Magic Value█                             ║
  1442.  ║                   ---- HEX ----                 ║
  1443.  ║     4d 61 67 69 63 20 56 61 6c 75 65                     ║
  1444.  ║                                     ║
  1445.  ║                                     ║
  1446.  ║                                     ║
  1447.  ║                                     ║
  1448.  ║                                     ║
  1449.  ╚═══════════════════════════════════════════════════════════════════════╝
  1450.  +-----------------------------------------------------------------------+
  1451.  
  1452.             Figure 15: Search Key Entry
  1453.  
  1454.  
  1455.  Special non-printing characters can be entered in ASCII  mode    if
  1456.  first preceded by Alt-V,  or verbatim key sequence.  Unless it is
  1457.  part of a verbatim sequence,  ESCape terminates  data    entry  and
  1458.  return is made to the Main Menu.
  1459.  
  1460.  Both  the cursor-left and the backspace keys may be used to erase
  1461.  the most recently typed character.   When a  key  has    been  com-
  1462.  pletely  entered,  pressing  the  ENTER  key  will cause it to be
  1463.  stored and a prompt for the next key will appear.  After the last
  1464.  key has been entered,    pressing ENTER as the first  character    of
  1465.  the line will signal the end of key specification.
  1466.  
  1467.  Up  to     five  search  keys may be specified;  AnaDisk will report
  1468.  matches on any of the specified keys.
  1469.  
  1470.  If use of a Search Mask has been indicated, the following is dis-
  1471.  played:
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.                   Page 22
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.          ╔════════<>^v to Move══════════╗
  1484.          ║     Please enter hex        ║
  1485.          ║     search mask value:    ║
  1486.          ║                ║
  1487.          ║        █            ║
  1488.          ║                ║
  1489.          ╚══════════════════════════════╝
  1490.  
  1491.  The search mask value can then be entered.   If a value of  0    is
  1492.  given, the following message is displayed:
  1493.  
  1494.          ╔════════<>^v to Move══════════╗
  1495.          ║  A search mask value of    ║
  1496.          ║  0 matches everything. Press ║
  1497.          ║  any key to respecify the    ║
  1498.          ║  mask value.            ║
  1499.          ║                ║
  1500.          ╚══════════════════════════════╝
  1501.  
  1502.  A new search mask may then be entered, or, ESCape can be pressed,
  1503.  and a mask value of 255 ( FF hex) or all 1's will be used.
  1504.  
  1505.  +-----------------------------------------------------------------------+
  1506.  ESC to Exit             AnaDisk 2.01               F1 for Help
  1507.  ├v┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴
  1508.  0  5    10   15      20   25  30    35  40     45   50  55   60   65     70   75
  1509.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  1510.  ║  A: Cyl 2 Side 0 Cluster 14        ║║ Working...             ║
  1511.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1512.  ╔════════════ GENERAL ═════════════╗╔═══════════ ANALYSIS ══════════════╗
  1513.  ║             ╔═══════════════════════════════════════╗e 1     ║
  1514.  ║  Double-Sided  Dou║           SEARCH MODE             ║ta found     ║
  1515.  ║             ║                         ║         ║
  1516.  ║  Sector size is 51║      Match on (1) "ERROR"             ║         ║
  1517.  ║             ║                         ║         ║
  1518.  ║             ║          Cylinder    2             ║         ║
  1519.  ║             ║          Side    0             ║         ║
  1520.  ║  DOS 5¼" 360K Form║        Sector    3                    ║           ║
  1521.  ║             ║          Offset    001a(26)         ║         ║
  1522.  ║             ║          File    \ANADISK.DOC         ║         ║
  1523.  ║___________________║                         ║         ║
  1524.  ║     FILE ALLOCATIO║     Press ESCape to terminate scan         ║         ║
  1525.  ║             ║     E to examine sector             ║         ║
  1526.  ║     Sectors Used: ║     C to continue searching         ║         ║
  1527.  ║     Sectors Reserv║     S to skip track             ║         ║
  1528.  ║     Sectors Flawed╚═══════════════════════════════════════╝         ║
  1529.  ║     Sectors Free:                             ║
  1530.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1531.  +-----------------------------------------------------------------------+
  1532.  
  1533.          Figure 16:  Search match display.
  1534.  
  1535.                   Page 23
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  After    obtaining  the    search    keys,  AnaDisk reads each diskette
  1542.  track and searches it for a match on each key    value  in  succes-
  1543.  sion.    If a matching value crosses (or "straddles") a track bound-
  1544.  ary,  AnaDisk    will  report  the  value as occurring on the lower
  1545.  track.     If a match is located, AnaDisk will then report the match
  1546.  if it occurs within the area of the disk that has been     specified
  1547.  for searching, i.e., ALL, ACTIVE or DELETED.
  1548.  
  1549.  It  is important to observe that AnaDisk searches the diskette in
  1550.  physical sector order;     that is,  the first sector of    the  first
  1551.  side of the first cylinder to the last sector of the last side of
  1552.  the  last cylinder,  which is not necessarily the way data is or-
  1553.  ganized within a given file.
  1554.  
  1555.  Unless Print hits without pausing has been selected,  each  match
  1556.  is reported as shown in Figure 16.  The value of the matching key
  1557.  is  also displayed.   If any positions of the key were entered in
  1558.  hexadecimal mode,  the key will be displayed in hexadecimal nota-
  1559.  tion.    Otherwise, the key will be displayed in ASCII.
  1560.  
  1561.  When  a  match     "hit"    is  displayed,    four actions are possible,
  1562.  depending on the character entered from the keyboard:
  1563.  
  1564.       1.   If ESCape is pressed, the search terminates and AnaDisk
  1565.        exits to the main menu display.
  1566.  
  1567.       2.   If E is pressed, the sector in which the match occurred
  1568.        is displayed with the Edit Sectors display.     If ESCape
  1569.        is pressed while in this display,  AnaDisk exits to the
  1570.        match screen (Figure 16).
  1571.  
  1572.       3.   If C is pressed,  the search continues  with     the  next
  1573.        character after the data causing the match.
  1574.  
  1575.       4.   If S is pressed, the remainder of the track is skipped,
  1576.        and searching resumes with the data on the next track.
  1577.  
  1578.  
  1579.  Copy Diskette
  1580.  
  1581.  The  Copy  Diskette function performs a diskette-to-diskette copy
  1582.  operation.   Within the limits of PC hardware,     an exact copy    of
  1583.  the original is made.    This is the only instance in which AnaDisk
  1584.  can be used to write a diskette.
  1585.  
  1586.  It  is strongly recommended that ALL original diskettes used with
  1587.  AnaDisk be write-protected!   It is most important,  however,    to
  1588.  observe  this    precaution when performing the Copy Diskette func-
  1589.  tion;    a brief mental lapse or distraction could  result  in  the
  1590.  original diskette being written.
  1591.  
  1592.  
  1593.                   Page 24
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  +-----------------------------------------------------------------------+
  1599.  ESC to Exit             AnaDisk 2.01               F1 for Help
  1600.  
  1601.  
  1602.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  1603.  ║                    ║║ Select - ESCape to quit, F1, help ║
  1604.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1605.  ╔═══════════════════════════════════════════════════════════════════════╗
  1606.  ║                                     ║
  1607.  ║                  COPY DISKETTE                 ║
  1608.  ║                                     ║
  1609.  ║   Select choices with -><-· cursor keys.  ENTER (<┘) begins         ║
  1610.  ║   execution.     F1 gets help, ESCape goes back to the opening menu.     ║
  1611.  ║                                     ║
  1612.  ║                                     ║
  1613.  ║        Source Diskette Unit            A:    B:         ║
  1614.  ║                                     ║
  1615.  ║        Destination Diskette Unit            A:    B:         ║
  1616.  ║                                     ║
  1617.  ║                                     ║
  1618.  ╚═══════════════════════════════════════════════════════════════════════╝
  1619.  +-----------------------------------------------------------------------+
  1620.  
  1621.           Figure 17: Copy Diskette Menu.
  1622.  
  1623.  
  1624.  Diskettes can be copied using either one diskette drive, in which
  1625.  case diskette "swaps" will be required, or with two drives.  If a
  1626.  two-drive  copy is performed,    the drives being used must both be
  1627.  capable of supporting the format being copied.      It is     not  pos-
  1628.  sible, for example, to copy a 3.5" 720K diskette to a target in a
  1629.  5.25" 360K drive.   Should this be attempted,  the following mes-
  1630.  sage appears:
  1631.  
  1632.          ╔════════<>^v to Move══════════╗
  1633.          ║  The source diskette type    ║
  1634.          ║  is incompatible with the    ║
  1635.          ║  destination type.  Press    ║
  1636.          ║  any key for Main Menu...    ║
  1637.          ║                ║
  1638.          ╚══════════════════════════════╝
  1639.  
  1640.  Because the diskette drives specified are unsuited for     the  par-
  1641.  ticular  copy operation,  AnaDisk exits to the Main Menu in order
  1642.  that a new drive selection can be made.
  1643.  
  1644.  The operation of the Copy Diskette function  is  straightforward.
  1645.  The  source  diskette is analyzed,  track by track,  and the data
  1646.  read from the source is accumulated in PC main memory.      When    no
  1647.  more  data can be stored,  the accumulated information is written
  1648.  to the destination diskette.    Each track of data that     has  been
  1649.  
  1650.  
  1651.                   Page 25
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  written  is verified by reading the data back.      The process con-
  1657.  tinues until there is no more data to be copied.    Progress  and
  1658.  error messages are displayed in the ANALYSIS window.
  1659.  
  1660.  Not  all  diskettes  can  be  copied faithfully by AnaDisk,  par-
  1661.  ticularly diskettes containing copy protection information  writ-
  1662.  ten by specialized equipment,    or diskettes that have been physi-
  1663.  cally modified (e.g.,    a hole burned by  laser     on  a    particular
  1664.  track).   Nor can diskettes that have been written by some non-PC
  1665.  compatible systems, such as the Apple Macintosh,  be copied using
  1666.  AnaDisk.
  1667.  
  1668.  
  1669.  Repair
  1670.  
  1671.  The  Repair  function will operate with DOS diskettes only.   The
  1672.  diskette is scanned for data errors;  any part of a file or  sub-
  1673.  directory  containing    errors is moved to a free area on the dis-
  1674.  kette and the original sectors marked as flawed in the     file  al-
  1675.  location table.  The data as read from the sectors containing the
  1676.  error is copied as read;  note that this data may contain errors.
  1677.  The sectors containing the original data are left undisturbed.
  1678.  
  1679.  After the Repair function has been selected from the  Main  Menu,
  1680.  the  diskette    unit  containing  the  diskette     to  be scanned is
  1681.  selected.   A printer "log" of the repair activity  may  also    be
  1682.  selected, if desired.
  1683.  
  1684.  AnaDisk  then    enters    Scan  mode.    When a sector read error is
  1685.  detected,  the display shown  in  figure  18  appears.     If  E    is
  1686.  pressed,  the    sector containing the error will be displayed with
  1687.  the Sector Edit display.   It may then be possible to correct the
  1688.  error    by rewriting the sector.   If M is pressed,  the data from
  1689.  the diskette will be moved as read to a free area of the diskette
  1690.  and the File Allocation Table (FAT) adjusted accordingly.  If ES-
  1691.  Cape is pressed, the error is left as-is, and the scan for errors
  1692.  continues.
  1693.  
  1694.  If the error occurs in a immovable area of the diskette,  such as
  1695.  the  root  directory or FAT,  the M option will not be displayed.
  1696.  In this case,    it will     be  necessary    to  reconstruct     the  data
  1697.  manually.
  1698.  
  1699.  Before     attempting  a Repair operation,  it is strongly suggested
  1700.  that a backup copy of the diskette be made with  the  Copy  func-
  1701.  tion.    Additionally, it should be noted that attempting to repair
  1702.  a  diskette  in a 1.2M drive which was written using a 360K drive
  1703.  may result in a diskette that is  unreadable  in  a  360K  drive.
  1704.  AnaDisk will request confirmation before proceeding with a repair
  1705.  of this type.
  1706.  
  1707.  
  1708.  
  1709.                   Page 26
  1710.  
  1711.  
  1712.  
  1713.  
  1714.  +-----------------------------------------------------------------------+
  1715.  ESC to Exit             AnaDisk 2.01               F1 for Help
  1716.  ├┴┴╫┴^┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴┴┴╫┴┴
  1717.  0  5    10   15      20   25  30    35  40     45   50  55   60   65     70   75
  1718.  ╔══════════════════════════════════╗╔═══════════════════════════════════╗
  1719.  ║  A: Cyl 7 Side 1 Cluster 190        ║║ Working...             ║
  1720.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1721.  ╔════════════ GENERAL ═════════════╗╔═══════════ ANALYSIS ══════════════╗
  1722.  ║                    ║║          Track 7, Side 1         ║
  1723.  ║  Double-Sided ╔═════════════ ! ══════════════╗D. adding sector 115     ║
  1724.  ║  Interleave is║ Data error detected.     Press    ║  from 1 to 115     ║
  1725.  ║  Sector size i║ E to edit data, M to move,    ║  data error         ║
  1726.  ║  Side 0 sector║ ESC to ignore error.        ║  is in         ║
  1727.  ║  Side 1 sector║                ║ DEF             ║
  1728.  ║         ║                ║             ║
  1729.  ║  DOS 5¼" 1200K╚══════════════════════════════╝                        ║
  1730.  ║                                     ║
  1731.  ║                    ║║                     ║
  1732.  ║----------------------------------║║                     ║
  1733.  ║   FILE ALLOCATION TABLE (FAT)    ║║                     ║
  1734.  ║                    ║║                     ║
  1735.  ║   Sectors Used:    772 ( 386K) ║║                     ║
  1736.  ║   Sectors Reserved:      0 (    0K) ║║                     ║
  1737.  ║   Sectors Flawed:      0 (    0K) ║║                     ║
  1738.  ║   Sectors Free:     1599 ( 799K) ║║                     ║
  1739.  ╚══════════════════════════════════╝╚═══════════════════════════════════╝
  1740.  +-----------------------------------------------------------------------+
  1741.  
  1742.         Figure 18: Repair Diskette Display.
  1743.  
  1744.  
  1745.  FAT Editor
  1746.  
  1747.  AnaDisk  provides  a  facility for displaying and editing the DOS
  1748.  File Allocation Table,     or FAT,  on a diskette.   After FAT  edit
  1749.  mode is selected from the Main Menu, the drive containing the dis-
  1750.  kette    to be edited is selected.   If the diskette being examined
  1751.  has a valid File Allocation Table,  a    display     similar  to  that
  1752.  shown in Figure 19 appears.
  1753.  
  1754.  The FAT describes how the groups of sectors, or Clusters, are put
  1755.  together.   Every file directory entry contains the number of the
  1756.  first cluster for a file.   If a file is less than one cluster in
  1757.  length,  the  entry for that cluster will contain the value 4095,
  1758.  signifying the end of the cluster list.   If the file    is  larger
  1759.  than one cluster,  however,  each cluster in the FAT will "point"
  1760.  to the next one, forming a chain of clusters.
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.                   Page 27
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  +-----------------------------------------------------------------------+
  1773.  ESC to Exit             AnaDisk 2.01               F1 for Help
  1774.  ╔═══════════════════════════════════════════════════════════════════════╗
  1775.  ║  F1 Help        F2 Edit Cluster    F3 What File?    F4 Write FAT     ║
  1776.  ║  F5 Enter value  F6 Re-read FAT     F7 Hex        ESC Exit     ║
  1777.  ║                                     ║
  1778.  ║  4088-4095 End-of-file    4087 Bad Cluster    4080-4086 Reserved     ║
  1779.  ║                                     ║
  1780.  ║                                     ║
  1781.  ║  Cluster 2(0002) = 3(3)                         ║
  1782.  ╚═══════════════════════════════════════════════════════════════════════╝
  1783.  ╔═══════════════════════════════════════════════════════════════════════╗
  1784.  ║ 00000   4089     4095      3    4     5 -     6        7      8    9    10     ║
  1785.  ║ 00010     11       12     13    14    15 -    16       17     18    19    20     ║
  1786.  ║ 00020     21       22     23    24  4095 -    26       27     28    29    30     ║
  1787.  ║ 00030     31       32     33    34    35 -    36       37     38    39    40     ║
  1788.  ║ 00040     41       42     43    44    45 -    46       47     48    49    50     ║
  1789.  ║ 00050     51       52     53    54    55 -    56       57     58    59    60     ║
  1790.  ║ 00060     61       62     63    64    65 -    66       67     68    69    70     ║
  1791.  ║ 00070     71       72     73    74    75 -    76       77     78    79    80     ║
  1792.  ║ 00080     81       82     83    84    85 -    86       87     88    89    90     ║
  1793.  ║ 00090     91       92     93    94    95 -    96       97     98    99   100     ║
  1794.  ║ 00100    101      102    103   104   105 -   106      107    108   109   110     ║
  1795.  ║ 00110    111      112    113   114   115 -   116      117    118   119   120     ║
  1796.  ║ 00120    121      122    123   124   125 -   126      127    128   129   130     ║
  1797.  ╚═══════════════════════════════════════════════════════════════════════╝
  1798.  +-----------------------------------------------------------------------+
  1799.  
  1800.            Figure 19: FAT Editor Display
  1801.  
  1802.  
  1803.  Certain FAT values have certain meanings.  The first value in the
  1804.  FAT is simply used to identify the FAT type;  the  second  always
  1805.  has the value 4095.   A value of 4087 indicates that a block con-
  1806.  tains    an error--this is almost always set by the FORMAT program.
  1807.  A value of 0 specifies a "free" or unallocated cluster.
  1808.  
  1809.  The cursor may be moved about the editing display,  the up- down-
  1810.  right-     and  left-cursor  keys and the PgUp and PgDn keys perform
  1811.  the navigation.   In addition,     the following function keys  have
  1812.  special meaning:
  1813.  
  1814.       F1   Produces a help display.
  1815.       F2   Produces  a Sector Edit display for the currently high-
  1816.        lighted cluster.
  1817.       F3   Identifies the file to which the currently  highlighted
  1818.        cluster belongs.
  1819.       F4   Rewrites  the modified FAT to a diskette.   AnaDisk re-
  1820.        quests confirmation before writing, however.
  1821.       F5   Allows  a  new  value  for  the  currently  highlighted
  1822.        cluster to be entered.
  1823.  
  1824.  
  1825.                   Page 28
  1826.  
  1827.  
  1828.  
  1829.  
  1830.       F6   Reads  the FAT from a diskette.   Any changes that were
  1831.        made to the displayed FAT are lost.
  1832.       F7   Toggles between a hexadecimal and decimal display.
  1833.       ESC  Returns to the main menu.  Any changes made to the dis-
  1834.        played FAT are lost.
  1835.  
  1836.  AnaDisk performs a few checks on the value entered  when  the    F5
  1837.  function is selected.    The value must lie within the range of al-
  1838.  locatable  clusters for the diskette and not be already allocated
  1839.  to some other file.
  1840.  
  1841.  
  1842.  Custom Format Design
  1843.  
  1844.  AnaDisk provides a custom format design  facility  which  may    be
  1845.  used  to  produce formatted diskettes for non-DOS computers or to
  1846.  design a rudimentary "copy-protection" method.      AnaDisk's custom
  1847.  formatting  function  is  not    intended  for use by beginners;     a
  1848.  detailed knowledge of diskette structure is necessary for  effec-
  1849.  tive use of this feature.
  1850.  
  1851.  After    the  FORMAT function has been selected from the Main Menu,
  1852.  the diskette drive containing the diskette  to     be  formatted    is
  1853.  selected.   A display similar to that shown in Figure 20 then ap-
  1854.  pears.      Because of checking that is performed     by  AnaDisk,  the
  1855.  simplest  operation  can be obtained if the following sequence of
  1856.  steps is observed:
  1857.  
  1858.  To "lay out" a format,     first select the sector size using the F2
  1859.  key; each depression of this key cycles through the allowable sec-
  1860.  tor sizes from 128 to 8,192 bytes.   Next, set the recording mode
  1861.  (FM or single-density,     MFM or double-density) using the F5  key.
  1862.  Either     a  high- or low-density data rate should be next selected
  1863.  using the F6 key.
  1864.  
  1865.  The number of sectors per track are then set using  the  F3  key.
  1866.  If  too  many    sectors are specified for the given recording mode
  1867.  and density,  the sector count     will be adjusted to  the  largest
  1868.  number of sectors that will fit on the track.
  1869.  
  1870.  The  actual starting cylinder is set with F4.     Note that a high-
  1871.  density 1.2M 5.25" is considered to possess 80 cylinders, regard-
  1872.  less of  density.    The  cylinder  increment    between     formatted
  1873.  cylinders  is    set  with F8.    The total number of cylinders for-
  1874.  matted is set with F9.      Note that this is  the  total     count    of
  1875.  cylinders  formatted,    and not the highest cylinder number.   The
  1876.  side or sides to be formatted is set with F7 and may be  side    0,
  1877.  side 1 or both sides.    The F10 key is used to duplicate the previ-
  1878.  ous editing display line into the currently highlighted line.
  1879.  
  1880.  
  1881.  
  1882.  
  1883.                   Page 29
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  +-----------------------------------------------------------------------+
  1889.  ESC to Exit             AnaDisk 2.01               F1 for Help
  1890.  ╔═══════════════════════════════════════════════════════════════════════╗
  1891.  ║  F1 Help       F2 Size  512         F3 10 Sectors     F4 Start Cyl. 0     ║
  1892.  ║  F5 MFM       F6  low-density   F7 Both Sides     F8 Step 1     ║
  1893.  ║  F9 80 Cyls.       F10 Duplicate     <┘ BEGIN FORMAT   ESC Exit         ║
  1894.  ║                                     ║
  1895.  ║                  ENTER TERM                 ║
  1896.  ║  F2S Cylinder  F3S Cyl. Count F4S Side     F5S Sector  F6S Constant     ║
  1897.  ║  +    Add      -   Subtract     *   Multiply /      Divide  .   End     ║
  1898.  ╚═══════════════════════════════════════════════════════════════════════╝
  1899.  ╔═══════════════════════════════════════════════════════════════════════╗
  1900.  ║  NO.      ---CYLINDER---  --- SIDE --- --- SECTOR --- --- LENGTH ---     ║
  1901.  ║   1.      CYL*2           HD            SCT-1         2         ║
  1902.  ║   2.      CYL*2           HD            SCT-1         2         ║
  1903.  ║   3.      CYL*2           HD            SCT-1         2         ║
  1904.  ║   4.      CYL*2           HD            SCT-1         2         ║
  1905.  ║   5.      CYL*2           HD            SCT-1         2         ║
  1906.  ║   6.      CYL*2           HD            SCT-1         2         ║
  1907.  ║   7.      CYL*2           HD            SCT-1         2         ║
  1908.  ║   8.      CYL*2           HD            SCT-1         2         ║
  1909.  ║   9.      CYL*2           HD            SCT-1         2         ║
  1910.  ║  10.      CYL*2           HD            SCT-1         2         ║
  1911.  ║                                     ║
  1912.  ║                                     ║
  1913.  ╚═══════════════════════════════════════════════════════════════════════╝
  1914.  +-----------------------------------------------------------------------+
  1915.  
  1916.          Figure 20: Custom Format Display
  1917.  
  1918.  
  1919.  By default, sector ID address headers written are as follows:
  1920.  
  1921.        ID Cylinder:  Actual cylinder
  1922.        ID Head:         Actual side
  1923.        ID Sector:    Starts with 1, increments by 1
  1924.        ID Length:    Actual sector length
  1925.  
  1926.  These    defaults  should  suffice  for most "normal" applications.
  1927.  However, the values for each ID address field may be altered con-
  1928.  siderably.
  1929.  
  1930.  Each entry in the ID address table shown in the lower part of the
  1931.  display can take on the following mathematical representation:
  1932.  
  1933.        value1 op value2 op value3 op value4
  1934.  
  1935.  Where each value is either a constant or one of the following spe-
  1936.  cial values:
  1937.  
  1938.  
  1939.  
  1940.  
  1941.                   Page 30
  1942.  
  1943.  
  1944.  
  1945.  
  1946.       Shift-F2 is the number  of  the  actual  cylinder     currently
  1947.         being formatted;  shown as CYL on the editing dis-
  1948.         play.
  1949.       Shift-F3 is the count of the cylinders that have    been  for-
  1950.         matted up to this point; shown as CNT on the edit-
  1951.         ing display.
  1952.       Shift-F4    is  the     side  (0 or 1) currently being formatted;
  1953.         shown as HD on the editing display.
  1954.       Shift-F5 is the number of the current sector on this  track,
  1955.         starting with 1;  shown as SCT on the editing dis-
  1956.         play.
  1957.  
  1958.  Shift-F6 is used to specify a fixed numeric value between  0  and
  1959.  255.
  1960.  
  1961.  op can be one of the following:
  1962.  
  1963.       +       for addition
  1964.       -       for subtraction
  1965.       *       for multiplication
  1966.       /       for division
  1967.  
  1968.  If  a period (.) is entered for op,  the expression is terminated
  1969.  at that point.      Expressions are  evaluated  from  left-to-right;
  1970.  results  are  limited to 8 bits (decimal 255).      Division by zero
  1971.  results in zero with no diagnostic. Overflow is ignored.
  1972.  
  1973.  For example, suppose it is desired to produce a single-sided for-
  1974.  mat where the ID address cylinder field begins with 39     and  ends
  1975.  with  0 at the innermost track.   The expression for the CYLINDER
  1976.  field for every sector in the editing display would be:
  1977.  
  1978.        39-CYL
  1979.  
  1980.  It should be observed that the Custom Format function only writes
  1981.  the format pattern to a diskette.   Other data,  such    as  system
  1982.  tables must be written using other means, such as the Sector Edit
  1983.  function.  It should be further observed that all sectors written
  1984.  by  the  Custom  Format  are of the same size,     regardless of the
  1985.  length specifier in the ID Address header.
  1986.  
  1987.  
  1988.  Dump Operation
  1989.  
  1990.  The Dump operation writes a specified area of a diskette to a DOS
  1991.  file.     After selecting the Dump option from the Main    Menu,  the
  1992.  diskette  drive containing the diskette to be read,  the range of
  1993.  cylinders and sides to be written to a     specified  DOS     file  are
  1994.  selected.
  1995.  
  1996.  Each  sector  written    to  the     file is optionally preceded by an
  1997.  8-byte header record of the following form:
  1998.  
  1999.                   Page 31
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.      +------+------+------+------+------+------+----------+
  2006.      | ACYL | ASID | LCYL | LSID | LSEC | LLEN |  COUNT      |
  2007.      +------+------+------+------+------+------+----------+
  2008.  
  2009.       ACYL    Actual cylinder, 1 byte
  2010.       ASID    Actual side, 1 byte
  2011.       LCYL    Logical cylinder; cylinder as read, 1 byte
  2012.       LSID    Logical side; or side as read, 1 byte
  2013.       LSEC    Sector number as read, 1 byte
  2014.       LLEN    Length code as read, 1 byte
  2015.       COUNT    Byte count of data to follow,  2 bytes.      If zero,
  2016.         no data is contained in this sector.
  2017.  
  2018.  All  sectors  occurring  on  a     side  will  be     grouped together;
  2019.  however,  they will appear in the same order as they occurred    on
  2020.  the diskette.     Therefore, if an 8 sector-per-track diskette were
  2021.  scanned which had a physical interleave of 2:1, the sectors might
  2022.  appear in the order 1,5,2,6,3,7,4,8 in the DOS dump file.
  2023.  
  2024.  After the last specified cylinder has been  written  to  the  DOS
  2025.  file, AnaDisk returns to the Main Menu.
  2026.  
  2027.  
  2028.  In Conclusion...
  2029.  
  2030.  We  believe  that AnaDisk Version 2.0 represents a major improve-
  2031.  ment over earlier verisons.  Our list of features yet to be added
  2032.  to AnaDisk includes an intelligent file unerase,  save     and  load
  2033.  data to a DOS file--and yes, a hard disk version!
  2034.  
  2035.  All  of  which     is made possible by your support of the Shareware
  2036.  concept.   We hope we will continue to be deserving of that  sup-
  2037.  port.      If there is any way in which we can assist you with this
  2038.  product, please call or drop us a line.
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.  
  2057.                   Page 32
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  Other Sydex Products
  2063.  
  2064.       AnaDisk -- The compleat diskette utility.      Nothing like    it
  2065.       anywhere else;  scan,  edit,  repair and copy just about any
  2066.       kind of diskette.     $25.00 ($150.00 site)    registration fee.
  2067.  
  2068.       Con>Format -- Concurrent    "background"  diskette    formatter.
  2069.       Features     "pop-up"  operation  and  "hot  key"  activation.
  2070.       You've got to see it to believe.   Supports all current  DOS
  2071.       formats. $15.00 ($50.00 site) registration fee.
  2072.  
  2073.       22DISK -- Transfer files, format, examine and erase files on
  2074.       "foreign" CP/M diskettes on your PC.   Includes tips on sup-
  2075.       porting 8" and 5.25"  single-density  diskettes.      Contains
  2076.       definitions for over 200 different formats.  $25.00 ($100.00
  2077.       site) registration fee.
  2078.  
  2079.       22NICE  --  A CP/M 2.2 emulation package.      Supports the NEC
  2080.       V-series chips or performs emulation by  software     for  both
  2081.       the  8080     and Z80 processors.   Includes terminal emulation
  2082.       and diskette handling for common    CP/M  systems.      Includes
  2083.       22DISK.  $40.00 ($150.00 site) registration fee.
  2084.  
  2085.       TeleDisk    --  Turn  any diskette into a compressed data file
  2086.       and vice-versa.    Allows you to send and receive entire dis-
  2087.       kettes via modem.     Even works with some "copy-protected" dis-
  2088.       kettes.  $20.00 ($65.00 site) registration fee.
  2089.  
  2090.       COPYQM -- Mass diskette duplicator.  Format, copy and verify
  2091.       multiple    diskettes  from     a single master.   Implements "no
  2092.       keyboard" interaction mode and drive "round  robin"  servic-
  2093.       ing.    Supports    all standard DOS formats.   $15.00 ($50.00
  2094.       site) registration fee.
  2095.  
  2096.       FORMATQM -- Mass diskette formatter - format a box  of  dis-
  2097.       kettes at a single sitting.  Implements "no keyboard" inter-
  2098.       action mode and drive "round robin" servicing.  Supports all
  2099.       standard    DOS  formats.     $10.00 ($40.00 site) registration
  2100.       fee.
  2101.  
  2102.  Information  on  any of these products can be obtained from Sydex
  2103.  by calling or writing us at:
  2104.  
  2105.  
  2106.                                        Sydex
  2107.                                     P.O. Box 5700
  2108.                                   Eugene, OR  97405
  2109.                                Voice:  (503)  683-6033
  2110.                                FAX:    (503)  683-1622
  2111.                                Data:   (503)  683-1385
  2112.  
  2113.  
  2114.  
  2115.                   Page 33
  2116.